跳出迴圈的方法 continue, break 與 return


Posted by backas36 on 2021-11-30

假設我們現在有個迴圈可以跑 0~4 ,共五次,我們在第 3 次 (i=2)的時候想要跳出迴圈該怎麼做呢?

continue

continue 簡單來說就是跳出『此次』迴圈,接著還會繼續執行迴圈,直到迴圈結束唷!

for (let i = 0; i < 5; i++) {
  if (i === 2) {
    console.log('continue in loop')
    continue
  }
  console.log(i)
}

會印出
0
1
continue in loop
3
4

break

break 跟 continue 就是相反,跳出此次迴圈之後,就一去不復返了。

for (let i = 0; i < 5; i++) {
  if (i === 2) {
    console.log('continue in loop')
    continue
  }
  console.log(i)
}

會印出
0
1
break in loop

return

return 也是跟 break 一樣會跳出迴圈,並停止迴圈。

const returnInloop = () => {
  for (let i = 0; i < 5; i++) {
    if (i === 2) return console.log('return in loop')
    console.log(i)
  }
}

returnInloop()

會印出
0
1
retrun in loop

有發現我是用呼叫 function 來執行 function body 裡面的迴圈的嗎? 是的,根據ECMA規範,如果 return
並不是在 function body 裡面,會造成 function 停止執行。

所以假設我們是這樣執行迴圈

for (let i = 0; i < 5; i++) {
  if (i === 2) return console.log('return in loop')
  console.log(i)
}

console.log('here')

會只印出
0
1
return in loop

就不會印出 'here' 了。


#javascript







Related Posts

Angular 9 + Firebase (2) : Firebase Authentication 做個 Google 登入應用

Angular 9 + Firebase (2) : Firebase Authentication 做個 Google 登入應用

VUE3 課前章節-JS 必備觀念-ES6縮寫

VUE3 課前章節-JS 必備觀念-ES6縮寫

MTR04 W2 D19 第二週作業

MTR04 W2 D19 第二週作業


Comments